package org.jeecg.modules.generator.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jeecg.common.aspect.annotation.Dict;

/**
 * 表字段信息
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("SYS_GENERATE_TAB_COLUMN")
public class SysGenerateTabColumn {

    /**
     * 主键ID
     */
    @TableId(type = IdType.ASSIGN_UUID)
    private java.lang.String id;

    /**表名称*/
    private String  tableName;

    /**是否为主键*/
    private String isPrimaryKey;

    /** 数据库字段名称 **/
    private String columnName;

    /**类属性名称 **/
    private String fieldName;

    /** 数据库字段类型 **/
    @Dict(dicCode = "java_type")
    private String columnType;

    /**是否必填*/
    private String required;

    /**长度*/
    private Long columSize;

    /** 数据库字段注释 **/
    private String columnComment;

    /** 字典值*/
    private String dictCode;

    /**默认值*/
    @TableField(exist = false)
    private String defaultValue;

    /**字符串长度,数值类型位数（包含小数点）*/
    @TableField(exist = false)
    private String length;

    /**小数点长度*/
    private Integer digits;

}
